// 知识点：撰写头文件时，无论是否被包含在其他任何头文件中，都应设置保护符，防止重复包含

// 撰写头文件时应加上以下代码：

// #ifndef
// Cccc//第一次包含本头文件时，#ifndef判断为真，预处理器将处理后面的内容直到#endif，此时的预处理变量Cccc已定义
// #define
// Cccc//第二次包含本头文件时，#ifndef判断为假，预处理器将忽略后面的内容，预处理变量一般定义为本头文件的大写形式
// /*
// ....
// */
// #endif//只要简单的加上就好了，无视C++中的作用域规则

// 稍加修改即可：

// istream& read(istream& is, Person& person)
// {
//     is >> person.name >> person.address;
//     if (is) person = Person();
//     return is;//返回输入流
// }//接受一个IO类型的引用作为其参数，IO类属于不能被拷贝的类型，只能用引用来传递它们

// ostream& print(ostream& os, const Person& person)
// {
//     os << person.name << " " << person.address;
//     return os;
// }
